$.fn.slideImg = function (){
	 function repeat(str, num) {
	        return new Array( num + 1 ).join( str );
	    }
	  
	    return this.each(function () {
	        var $wrapper = $('> div', this).css('overflow', 'hidden'),
	            $slider = $wrapper.find('> ul'),
	            $items = $slider.find('> li'),
	            $single = $items.filter(':first'),
	            
	            singleWidth = $single.outerWidth() + 20, 
	            visible = Math.round($wrapper.innerWidth() / singleWidth), // note: doesn't include padding or border
	            currentPage = 1,
	            pages = Math.ceil($items.length / visible);

	        var btcon = $("#hotgames_bt").find("> ul");
	        for(var index = 1; index <= pages; index++){
	        	btcon.append("<li>"+index+"</li>");
	        }
	        
	        var bts = btcon.children("li");
	        
	        bts.filter(":first").addClass("current");
	        
	        bts.filter(":first").before("<li class='prev'></li>");
	        bts.filter(":last").after("<li class='next'></li>");
	        
	      //绑定向前向后按钮。
	        btcon.children(".prev").click(function () {
	            return gotoPage(currentPage - 1); 
	        });
	        
	        btcon.children(".next").click(function () {
	            return gotoPage(currentPage + 1);
	        });
	        
	        bts.click(function (){
	        	gotoPage($(this).html());
	        });
	        
	        // 为补齐页数，创建几个空的li
	        if (($items.length % visible) != 0) {
	            $slider.append(repeat('<li class="empty" />', visible - ($items.length % visible)));
	            $items = $slider.find('> li');
	        }

	        //为了是滚动时收尾首尾相连，需在之前和之后各复制一页第一页和最后一页。
	        $items.filter(':first').before($items.slice(- visible).clone().addClass('cloned'));
	        $items.filter(':last').after($items.slice(0, visible).clone().addClass('cloned'));
	        $items = $slider.find('> li'); // reselect
	        
	        //由于在第一页之前复制了一页，因此此处需将初始位置设置为第二页以显示真正的第一页。
	        $slider.css("left", -singleWidth * visible);
	        
	        //
	        function gotoPage(page) {
	            var dir = page < currentPage ? 1 : -1,
	                n = Math.abs(currentPage - page),
	                left = singleWidth * dir * visible * n;
	            
	            $slider.filter(':not(:animated)').animate({
	                left : '+=' + left + "px"
	            }, 500, function () {
	                if (page == 0) {
	                	//向后退到第一页之后时，把页码设置为复制过的最后一页，以保证再次滚动时能够滚动到真正的最后一页。
	                	$slider.css("left", -singleWidth * visible * pages);
	                    page = pages;
	                } else if (page > pages) {
	                	//向前走带最后一页时，把页码设置为复制过的最前一页，以保证再次向前滚动时能够滚动到真正的第一页。
	                	$slider.css("left", -singleWidth * visible);
	                    page = 1;
	                } 

	                currentPage = page;
	                
	                bts.removeClass("current");
	                bts.each(function(index){
	                	if(index+1 == currentPage)
	                		$(this).addClass("current");
	                });
	            });                
	            
	            return false;
	        }
	        
	        
	        
	        //创建一个接口供外部访问使用。
	        $(this).bind('goto', function (event, page) {
	            gotoPage(page);
	        });
	    });  
};

//  垂直移动的幻灯片
$.fn.slidePane = function(){
	
	var $elem = $(this),
	$slider = $elem.children(".games_pane")
	$pane = $slider.find("> ul"),
	
	$panes = $pane.find("> li"),
	
	$height = $elem.outerHeight(),
	$pages = Math.ceil($panes.length /12),
	$currentpage = 0,
	
	$btcontainer = $("#newstgame_bt").find("> ul");
	
	//加入导航键和暂停键。
	for(var index = 0; index < $pages; index++){
		$btcontainer.append("<li class='bt'>" + (index + 1)+ "</li>");
	}
	$btcontainer.append("<li class='pause'>暂停</li>");
	$bts = $btcontainer.children(".bt");
	$bts.filter(":first").addClass("current");
	
	//给导航键添加事件。
	$bts.click(function(){
		var page = $(this).html()-1;
		if(page != $currentpage)
			gotopage(page);
	});
	
	//给暂停键加事件。
	$btcontainer.children(".pause").toggle(function(){
		$(this).html("开始");
		stop();
	}, function(){
		$(this).html("暂停");
		if($pages > 1)
			autoPlay();
	});
	if($pages > 1)
		autoPlay();
	
	//移动到第N页方法
	function gotopage(page){
		//计算要移动的距离。
		var dir = page < $currentpage ? 1 : -1,
                n = Math.abs($currentpage - page),
                top = $height * dir *  n,
                drop = $height * dir *  n / 5;
		
		//只有当没有在移动时才移动，否则会产生页码错乱问题。
		$pane.filter(':not(:animated)').fadeTo(200, 0.5).animate({
			top: "+=" + (top + drop) + "px"}, 500 , 'swing' ,
			function(){
				$pane.animate({
				top: "-=" + drop + "px"	, opacity: 1
				}, 200, 'swing');
				$currentpage = page;
				$bts.removeClass("current");
				$bts.each(function(index){
					if(index == page){
						$(this).addClass("current");
					}
				});
			}
		);
	}
	
	//自动播放。
	function autoPlay(){
		var st = setInterval(function(){
			page =  $currentpage < ($pages - 1) ? $currentpage + 1 : 0;
			gotopage(page);
		}, 10000);
		$elem.data('interval', st);
	}
	
	//停止自动播放。
	function stop(){
		clearInterval($elem.data('interval'));
	}
	
	
	
};

$(document).ready(function () {
	$('#hotgames_search').slideImg();

	$(".huandeng .suoyin").click(function(){
		$('#hotgames_search').trigger("goto", 1);
	});
	
	$(".newstgame_slider").slidePane();
	});